﻿Module Module1

    Sub Main()
        Console.Write("Indique su DNI: ")
        Dim dni_introducido As String = Console.ReadLine()
        Console.WriteLine("La letra de su DNI es: " & obtenerLetra(dni_introducido))
        Console.ReadLine()


    End Sub


    'este método devuelve la letra del dni, recibiéndolo como parámetro
    Public Function obtenerLetra(ByVal dni As Integer) As String
        Dim resultado As String = ""
        Dim letra() As String = {"T", "R", "W", "A", "G", "M", "Y", "F", "P", "D", "X", "B", "N", "J", "Z", "S", "Q", "v", "H", "L", "C", "K", "E"}
        Dim x As Integer = Int(dni / 23)
        Dim y As Integer = x * 23
        'OTRA MANERA DE HACER ESTE EJERCICIO ES USANDO MOD 23
        Dim valor As Integer = dni - y
        ' If valor < 0 Then
        'valor = valor * (-1)
        'End If

        For i = 0 To letra.Length
            If valor = i Then
                resultado = letra(i)
            End If

        Next
        'return letra(dni mod 23)
        Return resultado



        'Return resultado

    End Function

End Module
